<html>
<head>
    <meta charset="UTF-8">
    <title>角色列表</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta http-equiv="Access-Control-Allow-Origin" content="*">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="/static/layui/css/layui.css" media="all">
</head>
<body>
<div class="demoTable" style="text-align: center">
    <div class="layui-form">
        <div class="layui-input-inline">
            <select name="aposition"  id="aposition">
                <option value="0">超级管理员</option>
                <option value="1">管理员</option>
                <option value="2">员工</option>
            </select>
        </div>
    <div class="layui-inline">
        <input class="layui-input" name="user.apuser" id="apuser" placeholder="编号" autocomplete="off">
    </div>
    <div class="layui-inline">
        <input class="layui-input" name="user.aname" id="aname" placeholder="姓名" autocomplete="off">
    </div>
    <div class="layui-inline">
        <input class="layui-input" name="user.aphone" id="aphone" placeholder="手机号" autocomplete="off">
    </div>
    <button class="layui-btn" id="searchBtn" data-type="reload">搜索</button>
    </div>
</div>
<table class="layui-hide" id="demo" lay-filter="test"></table>
<script type="text/jsp" id = "barDemo">
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="promotion">升职</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="demotion">降职</a>
</script>
<script src="/static/js/jquery-3.3.1.js"></script>
<script src="/static/layui/layui.js"></script>
<script>
    /*
    * 下拉角色*/
    layui.use(['form','laydate'], function() {
        var form = layui.form;

    });

    layui.use(['table','layer','jquery'], function(){
        var table = layui.table;
        var  layer = layui.layer;
        var  $ = layui.jquery;
        var form = layui.form;
        //第一个实例
        table.render({
            elem: '#demo'
            ,height: document.body.clientHeight-180
            ,url: '/RoleController/selectAll' //数据接口
            ,page:true
            ,id:'testReload'
            ,cols: [[ //表头
                 {field: 'aid', title: 'ID', width:80, sort: true}
                ,{field: 'apuser', title: '用户编号', width:180, sort: true}
                ,{field: 'aposition', title: '角色', width:100, sort: true,
                    templet: function (d) {
                        if (d.aposition == 0) {
                            return '超级管理员';
                        }
                        if (d.aposition == 1) {
                            return '管理员';
                        }
                        if (d.aposition == 2) {
                            return '员工';
                        }
                    }}
                ,{field: 'aname', title: '姓名', width:180, sort: true}
                ,{field: 'aphone', title: '手机号', width:180, sort: true}
                ,{field: 'right', title: '操作', width: 180, toolbar:'#barDemo'}
            ]]
            ,toolbar:'#toolbar',//表格头信息
            parseData: function (rs) {//数据格式解析
                console.log(rs);
                if (rs.code == 200) {
                    return {
                        "code": rs.code,
                        "msg": rs.msg,
                        "count": rs.date.total,
                        "data": rs.date.list
                    }
                }
            },
            response: {	// 设置响应码
                statusCode: 200 //规定成功的状态码，默认：0
            }
        });
        //监听行事件
        table.on('tool(test)', function(obj){
            var data = obj.data;
            console.log(data)
            if(obj.event === 'promotion'){
                if(aposition >0 || aposition <3 ) {
                    layer.confirm('真的升职吗！！', function (index) {
                        $.ajax({
                            type: "post",
                            url: '/RoleController/promotion',
                            data: {aid: data.aid},
                            dataType: "json",
                            success: function (da) {
                                if (da.code == 200) {
                                    layer.msg(da.msg)
                                    obj.del(); //删除对应行（tr）的DOM结构
                                    // location.reload();//刷新当前页面
                                } else {
                                    layer.msg(da.msg)
                                }
                            },
                            error: function (da) {
                                alert("出现错误");
                                return false;
                            }
                        }) //ajax结束
                        layer.close(index);
                    });
                }else {
                    alert("你的职位已经最高了！！！");
                }
            } else if(obj.event === 'demotion') {
                if (aposition > 0 || aposition <3 ) {
                    layer.confirm('真的降职吗！！', function (index) {
                        $.ajax({
                            type: "post",
                            url: '/RoleController/demotion',
                            data: {aid: data.aid},
                            dataType: "json",
                            success: function (da) {
                                if (da.code == 200) {
                                    layer.msg(da.msg)
                                    obj.del(); //删除对应行（tr）的DOM结构
                                    // location.reload();//刷新当前页面
                                } else {
                                    layer.msg(da.msg)
                                }
                            },
                            error: function (da) {
                                alert("出现错误");
                                return false;
                            }
                        }) //ajax结束
                        layer.close(index);
                    });
                }else {
                    alert("你的职位不能再降了！！！");
                }
            }
        });
        //"用户添加页面",
        function open(title,url){
            layer.open({
                type: 2
                ,title: title
                ,content:url
                ,offset: '50px'
                ,area: ['500px', '60%']
                ,end:function () {
                    table.reload('testReload');
                }
            });
        }

        function searchBtn(){

        }

        var $ = layui.$, active = {
            reload: function () {
                var apuser = $('#apuser');
                var aname = $('#aname');
                var aposition = $('#aposition');
                var aphone = $('#aphone');
                //执行重载
                table.reload('testReload', {
                    page: {
                        curr: 1 //重新从第 1 页开始
                    }
                    , where: {
                        "apuser": apuser.val(),
                        "aposition": aposition.val(),
                        "aname": aname.val(),
                        "aphone": aphone.val()
                    }
                });
            }
        };
        $('.demoTable .layui-btn').on('click', function () {
            var type = $(this).data('type');
            active[type] ? active[type].call(this) : '';
        });
    });
</script>
</body>
</html>